<!DOCTYPE html>
<html>

	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>

	<body>
		首先假设考生的 ID 为奇数则考的是手动档， 为偶数则考的是自动档。 如果给所有考生都 new 一个驾考车，
		 那么这个系统中就会创建了和考生数量一致的驾考车对象：<br>
	</body>
	<script>

		var candidateNum = 10 // 考生数量
		var examCarNum = 0 // 驾考车的数量

		/* 驾考车构造函数 */
		function ExamCar(carType) {
			examCarNum++
			this.carId = examCarNum
			this.carType = carType ? '手动档' : '自动档'
		}

		ExamCar.prototype.examine = function(candidateId) {
			console.log('考生- ' + candidateId + ' 在' + this.carType + '驾考车- ' + this.carId + ' 上考试')
		}

		for(var candidateId = 1; candidateId <= candidateNum; candidateId++) {
			var examCar = new ExamCar(candidateId % 2)
			examCar.examine(candidateId)
		}

		console.log('驾考车总数 - ' + examCarNum)
		// 输出: 驾考车总数 - 10
	</script>

</html>